﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Oya.Entities
{
    public class Habilete : ElementBase
    {
        #region Proprietes et champs
       

      

        #region TRiplet Effet, Magnitude, Duree
        //Now in base class
        //private ElementEffetType effetType;

        ///// <summary>
        ///// Type d effet de l habilete
        ///// </summary>
        //public ElementEffetType EffetType
        //{
        //    get { return effetType; }
        //    set { effetType = value; }
        //}

        private int magnitude;

        /// <summary>
        /// Force de l effet - 
        /// </summary><remarks>se calcul avec les proprietes attaque, defense, volonte du monstre</remarks>
        public int Magnitude
        {
            get { return magnitude; }
            set { magnitude = value; }
        }
        private int duree;

        /// <summary>
        /// Duree de l'effet en tour
        /// </summary>
        public int Duree
        {
            get { return duree; }
            set { duree = value; }
        }

        
        /// <summary>
        /// Appliquer sur le monstre cible l habilete
        /// </summary>
        /// <remarks>
        /// Utiliser le monstre source pour appliquer la guerison.</remarks>
        /// <param name="monstreCible"></param>
        public override void Utiliser(MonstreBase monstreCible)
        {
            //TODO Implement application of the effect on monster
            switch (this.TypeElement)
            {
                case ElementType.Air:
                    //todo appli habilete logic for air

                    break;

                case ElementType.Eau:
                    //todo appli habilete logic for Eau
                    ;

                    break;

                case ElementType.Feu:
                    //todo appli habilete logic for Feu
                    ;

                    break;

                case ElementType.Terre:
                    //todo appli habilete logic for Terre
                    ;

                    break;
            }
            throw new NotImplementedException();
        }


        #endregion

        #endregion
    }
}